#!/usr/bin/env python
"""
Celery启动脚本，用于启动Celery工作进程
使用方法:
    python run_celery.py
"""

import os
import subprocess
import sys

def run_celery():
    """启动Celery工作进程"""
    # 设置环境变量
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'OMS.settings')
    
    # 基本命令
    base_cmd = [
        'celery',
        '-A',
        'OMS',  # 项目名
        'worker',
        '--loglevel=info',
    ]
    
    # 如果提供了额外参数，添加到命令中
    if len(sys.argv) > 1:
        base_cmd.extend(sys.argv[1:])
    
    # 打印提示信息
    print("启动Celery工作进程...")
    print(f"命令: {' '.join(base_cmd)}")
    
    try:
        # 执行命令
        subprocess.call(base_cmd)
    except KeyboardInterrupt:
        print("\nCelery工作进程已停止")
        sys.exit(0)
    except Exception as e:
        print(f"启动Celery时出错: {e}")
        sys.exit(1)

if __name__ == '__main__':
    run_celery() 